Computers have now become an integral part of our society both in business and in residential settings. Almost every business of sufficient size in Germany, the United States, and other developed countries has one or more computers to assist them in running their businesses. Similarly, many families in those countries now have computers at home that are used to run various applications including games.
Some attribute the popularity of the computers to the Internet. The Internet provides people with a ready access to vast amounts of data. Many people now get their news, sports, stock, entertainment, and other information primarily from the Internet. Businesses have also embraced the Internet. The Internet provides the opportunity for computers to communicate instantly with other computers or individuals. Business processes that were once restricted to intranets and their users are now moving to the Internet. Accordingly, companies are moving more and more of their data to electronic forms. In addition, companies have amassed huge amounts of data in an effort to understand their business, improve performance, and build stronger employee, customer, and partner relationships.
Virtualization is a technology for optimizing processing at a computer. Virtualization provides a software layer that when executed allows one or more virtual machines with, in some cases, different operating systems to run side-by-side with other virtual machines running on the same host (e.g., a physical machine, such as a node, a computer, a processor, a server, a blade, and the like). A virtual machine is a machine that is defined and implemented in software rather than hardware. The virtualization software provides a so-called “container” that wraps and isolates the virtual machine from other virtual machines. For example, in a server complex including fifty physical servers, each of which hosts its own application server, virtualization permits the server complex to instead operate with, for example, twenty-five physical servers, each of which includes virtualization software providing two virtual machines as application servers. In both cases, fifty application servers are deployed, but with virtualization, the number of physical servers is reduced to twenty-five. Virtualization software may also control one or more of the following functions: running multiple virtual machines with different operating systems at the same time on the same physical machine; generating fully configured isolated virtual machines with a set of virtual hardware including an operating system and applications; saving, copying, and provisioning of virtual machines; and moving virtual machines from one physical machine to another physical machine for workload management.
An example of virtualization software is a hypervisor (also referred to as a virtual machine controller or, more simply, a controller). VMWare ESX and VMware Server are examples of hypervisor software for virtualizing an operating environment (including operating system, IP (Internet Protocol) addresses, registries, and other aspects normally found in a computer system) to provide a virtual machine. The hypervisor software may control (or manage) the physical machine's processor, memory, storage, network bandwidth, and other resources enabling the virtual operating environments (i.e., systems).